63 research outputs found

    La gestion de la connaissance des équipes de développement logiciel

    Get PDF
    RÉSUMÉ Contexte : Le dĂ©veloppement logiciel est un travail d’équipe manipulant un produit essentiellement invisible. En consĂ©quent, le dĂ©veloppement logiciel nĂ©cessite des Ă©changes de connaissances importants entre dĂ©veloppeurs afin que l’équipe effectue une rĂ©solution de problĂšme adĂ©quate. Cette rĂ©solution de problĂšme rĂ©sulte en une prise de dĂ©cision qui aura un impact direct sur la qualitĂ© du produit logiciel final. Objectif : Ce travail doctoral a pour objectif de mieux comprendre ces interactions entre dĂ©veloppeurs et comment ces interactions peuvent ĂȘtre liĂ©es Ă  des problĂšmes de qualitĂ© logicielle. Cette meilleure comprĂ©hension du phĂ©nomĂšne permet d’amĂ©liorer les approches actuelles de dĂ©veloppement logiciel afin d’assurer une meilleure qualitĂ© du produit final. MĂ©thodologie : PremiĂšrement, des revues de littĂ©rature ont Ă©tĂ© effectuĂ©es afin de mieux comprendre l’état actuel de la recherche en gestion de connaissance dans le gĂ©nie logiciel. DeuxiĂšmement, des analyses de code source et des discussions avec les dĂ©veloppeurs ont Ă©tĂ© faites afin de mieux cerner les causes de problĂšmes classiques de qualitĂ© logicielle. Finalement, des observations faites dans l’industrie ont permis de comprendre la prise de dĂ©cision collective, et comment cette prise de dĂ©cision impacte la qualitĂ© logicielle. RĂ©sultats : Les observations effectuĂ©es ont dĂ©montrĂ© que la qualitĂ© logicielle n’est pas qu’un problĂšme d’éducation ; l’essentiel des problĂšmes de qualitĂ© ont Ă©tĂ© introduits par les dĂ©veloppeurs en toute connaissance de cause afin de rĂ©pondre Ă  d’autres impĂ©ratifs plus urgents au moment de la prise de dĂ©cision. AmĂ©liorer la qualitĂ© des logiciels demande de revoir la maniĂšre dont les projets de dĂ©veloppement logiciel sont gĂ©rĂ©s afin d’assurer que les dĂ©cisions prises sur le terrain n’auront pas de consĂ©quences nĂ©gatives trop coĂ»teuses Ă  long terme. Conclusions : Il est recommandĂ© que les organisations se dote d’un nouveau palier dĂ©cisionnel faisant la jointure entre besoins techniques (i.e. qualitĂ© logicielle) et administratifs (i.e. ressources disponibles). Ce nouveau palier dĂ©cisionnel se situerait au niveau de la base de code (« codebase »), soit entre le palier organisationnel et le palier de gestion de projet. Une base de code Ă©tant modifiĂ©e de maniĂšre concurrente par plusieurs projets en parallĂšle, il devient nĂ©cessaire d’avoir un meilleur contrĂŽle sur les modifications effectuĂ©es sur celle-ci. Ce nouveau palier serait le gardien des connaissances en lien avec la base de code, selon le principe « you build it, you run it » favorisĂ© dans certaines organisations. Ce nouveau palier serait responsable d’assurer que la base de code reste d’une qualitĂ© suffisamment bonne pour supporter les activitĂ©s de l’organisation dans l’avenir.----------ABSTRACT Context: Software development is a process requiring teamwork on an essentially invisible product. Therefore, software development requires important knowledge exchanges between developers in order to ensure a proper problem resolution. This problem resolution affects the decision making process, which will have a direct impact on the software quality of the final product. Objective: This thesis work aims to better understand these interactions between developers and how they can be linked to software quality problems. With a better understanding of the relation, it will be possible to improve the current software development management practices in order to ensure a better quality of the final software product. Method: First, literature reviews were made with the objective to understand the current state of the research in knowledge management in software engineering. Second, source code analyzes and discussions with the developers were executed in order to better understand the causes of typical software quality issues. Finally, observations were made in an industrial context in order to observe collective decision making in the field, and to understand how these decisions impacts software quality. Results: The bservations made demonstrated that software quality is not only an educational problem; most of the quality problems found were introduced voluntarily by the developers in order to answer a more urgent requirement at the time. Improving software quality therefore requires a review of how software development projects are managed in order to ensure that the decision made in the field do not have overly costly consequences in the long term. Conclusions: It is recommended that organization assign a new decision level linking the technical requirements (i.e. software quality) with administrative requirements (i.e. available resources). This new decision level would be situated at the codebase level, between the organizational strategy level and the project management level. A codebase being modified concurrently by multiple projects, it is therefore necessary to have a better control of the modifications made on it. The people at this new decision level would be the knowledge repository related to the codebase, under the “you build it, you run it” principle popular in some organizations. This new decision level would be responsible of ensuring that the codebase remains of a sufficient quality in order to support the future activities of the organization

    Why Modern Open Source Projects Fail

    Full text link
    Open source is experiencing a renaissance period, due to the appearance of modern platforms and workflows for developing and maintaining public code. As a result, developers are creating open source software at speeds never seen before. Consequently, these projects are also facing unprecedented mortality rates. To better understand the reasons for the failure of modern open source projects, this paper describes the results of a survey with the maintainers of 104 popular GitHub systems that have been deprecated. We provide a set of nine reasons for the failure of these open source projects. We also show that some maintenance practices -- specifically the adoption of contributing guidelines and continuous integration -- have an important association with a project failure or success. Finally, we discuss and reveal the principal strategies developers have tried to overcome the failure of the studied projects.Comment: Paper accepted at 25th International Symposium on the Foundations of Software Engineering (FSE), pages 1-11, 201

    A knowledge-based perspective for software process modeling

    Get PDF
    As the acquisition and sharing of knowledge form the backbone of the software development process, it is important to identify knowledge discrepancies between the process elements. Explicit representation of the knowledge components within a software process model can provide a means to expose these discrepancies. This paper presents an extension of the Software and System Process Engineering Metamodel (SPEM), to be used as a new knowledge modeling layer. The approach, which is based on ontologies for knowledge representation, constitutes an explicit method for representing knowledge within process models. A concept matching indicator shows the state of the process model in terms of the concept gaps for each task within the process. This indicator could lead to more informed decision making and better management of the associated risks, in terms of team competency, documentation quality, and the training required to mitigate them

    Proteomic analyses reveal misregulation of LIN28 expression and delayed timing of glial differentiation in human iPS cells with MECP2 loss-of-function.

    Get PDF
    Rett syndrome (RTT) is a pervasive developmental disorder caused by mutations in MECP2. Complete loss of MECP2 function in males causes congenital encephalopathy, neurodevelopmental arrest, and early lethality. Induced pluripotent stem cell (iPSC) lines from male patients harboring mutations in MECP2, along with control lines from their unaffected fathers, give us an opportunity to identify some of the earliest cellular and molecular changes associated with MECP2 loss-of-function (LOF). We differentiated iPSC-derived neural progenitor cells (NPCs) using retinoic acid (RA) and found that astrocyte differentiation is perturbed in iPSC lines derived from two different patients. Using highly stringent quantitative proteomic analyses, we found that LIN28, a gene important for cell fate regulation and developmental timing, is upregulated in mutant NPCs compared to WT controls. Overexpression of LIN28 protein in control NPCs suppressed astrocyte differentiation and reduced neuronal synapse density, whereas downregulation of LIN28 expression in mutant NPCs partially rescued this synaptic deficiency. These results indicate that the pathophysiology of RTT may be caused in part by misregulation of developmental timing in neural progenitors, and the subsequent consequences of this disruption on neuronal and glial differentiation

    Visual Encoding of Social Cues Contributes to Moral Reasoning in Autism Spectrum Disorder: An Eye-Tracking Study

    Get PDF
    Eye-tracking studies suggest that visual encoding is important for social processes such as socio-moral reasoning. Alterations to the visual encoding of faces, for example, have been linked to the social phenotype of autism spectrum disorders (ASDs) and are associated with social and communication impairments. Yet, people with ASD often perform similarly to neurotypical participants on measures of moral reasoning, supporting the hypothesis of differential mechanisms of moral reasoning in ASD. The objective of this study was to document visual encoding and moral reasoning in ASD and neurotypical individuals using a visual, ecological, sociomoral reasoning paradigm paired with eye-tracking. Two groups (ASD, Control) matched for age and IQ completed the SoMoral task, a set of picture situations describing everyday moral dilemmas, while their eye movements and pupil dilation were recorded. Moral understanding, decision-making, and justification were recorded. Participants with ASD presented a longer time to first fixation on faces. They also understood fewer dilemmas and produced fewer socially adaptive responses. Despite a similar average level of moral maturity, the justifications produced by participants with ASD were not distributed in the same way as the neurotypical participants. Visual encoding was a significant predictor of moral decision-making and moral justification for both groups. The results are discussed in the context of alternative mechanisms of moral reasoning in ASD

    Protein-protein interaction confidence assessment and network clustering computational analysis

    No full text
    Protein-protein interactions represent a crucial source of information for the understanding of the biological mechanisms of the cell. In order to be useful, high quality protein-protein interactions must be computationally extracted from the noisy datasets produced by high-throughput experiments such as affinity purification. Even when filtered protein-protein interaction datasets are obtained, the task of analyzing the network formed by these numerous interactions remains tremendous. Protein-protein interaction networks are large, intricate, and require computational approaches to provide meaningful biological insights. The overall objective of this thesis is to explore algorithms assessing the quality of protein-protein interactions and facilitating the analysis of their networks. This work is divided into four results: 1) a novel Bayesian approach to model contaminants originating from affinity purifications, 2) a new method to identify and evaluate the quality of protein-protein interactions independently in different cell compartments, 3) an algorithm computing the statistical significance of clusterings of proteins sharing the same functional annotation in protein-protein interaction networks, and 4) a computational tool performing sequence motif discovery in 5' untranslated regions as well as evaluating the clustering of such motifs in protein-protein interaction networks.Les interactions protĂ©ine-protĂ©ine reprĂ©sentent une source d'information essentielle Ă  la comprĂ©hension des divers mĂ©chanismes biologiques de la cellule. Cependant, les expĂ©riences Ă  haut dĂ©bit qui identifient ces interactions, comme la purification par affinitĂ©, produisent un trĂšs grand nombre de faux-positifs. Des mĂ©thodes computationelles sont donc requises afin d'extraire de ces ensembles de donnĂ©es les interactions protĂ©ine-protĂ©ine de grande qualitĂ©. Toutefois, mĂȘme lorsque filtrĂ©s, ces ensembles de donnĂ©es forment des rĂ©seaux trĂšs complexes Ă  analyser. Ces rĂ©seaux d'interactions protĂ©ine-protĂ©ine sont d'une taille importante, d'une grande complexitĂ© et requiĂšrent des approches computationelles sophistiquĂ©es afin d'en retirer des informations possĂ©dant une rĂ©elle portĂ©e biologique. L'objectif de cette thĂšse est d'explorer des algorithmes Ă©valuant la qualitĂ© d'interactions protĂ©ine-protĂ©ine et de faciliter l'analyse des rĂ©seaux qu'elles composent. Ce travail de recherche est divisĂ© en quatre principaux rĂ©sultats: 1) une nouvelle approche bayĂ©sienne permettant la modĂ©lisation des contaminants provenant de la purification par affinitĂ©, 2) une nouvelle mĂ©thode servant Ă  la dĂ©couverte et l'Ă©valuation de la qualitĂ© d'interactions protĂ©ine-protĂ©ine Ă  l'intĂ©rieur de diffĂ©rents compartiments de la cellule, 3) un algorithme dĂ©tectant les regroupements statistiquement significatifs de protĂ©ines partageant une mĂȘme annotation fonctionnelle dans un rĂ©seau d'interactions protĂ©ine-protĂ©ine et 4) un outil computationel qui a pour but la dĂ©couverte de motifs de sĂ©quences dans les rĂ©gions 5' non traduites tout en Ă©valuant le regroupement de ces motifs dans les rĂ©seaux d'interactions protĂ©ine-protĂ©ine

    Inquiry on usability of two software process modeling systems using ISO/IEC 9241

    No full text
    • 

    corecore